package com.example.interview;

import java.util.Set;
import java.util.TreeSet;

/**
 * 打印1到1000的素数
 * @author zhanpengguo
 * @date 2020-09-10 14:20
 */
public class One {

    public static void main(String[] args) {
        One one = new One();
        one.print(1000);
    }

    public void print(int num) {
        if (num <= 3) {
            System.out.println(num);
        }
        // 素数集合
        Set<Integer> res = new TreeSet<>();
        int i = 1;
        while (i < num) {
            if (i <= 7) {
                res.add(i);
            } else {
                boolean isSu = true;
                for (Integer re : res) {
                    // 整除说明不是素数
                    if (re != 1 && i % re == 0) {
                        isSu = false;
                        break;
                    }
                }
                if (isSu) {
                    res.add(i);
                }
            }
            i += 2;
        }
        res.forEach(System.out::println);
        System.out.println("=============");
        System.out.println(res.size());
    }
}
